fix(web): clarify terminal sidebar grouping - #7967
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
ApprovabilityVerdict: Approved at Macroscope's review found this PR approvable — This is a localized web UI clarification that makes terminal groups easier to understand and shares an existing close-control pattern across tab strips. Existing activation and terminal-close callbacks remain intact, with no changes to session logic, data contracts, or production infrastructure. You can add or adjust custom eligibility rules. Learn more. |
32515bc to
1da0e0e
Compare
1da0e0e to
471ce80
Compare
There was a problem hiding this comment.
One consistency finding: the tab row and hover/focus icon-swap close button are copied verbatim from RightPanelTabs, creating a second call site for the same durable geometry and interaction contract without a shared primitive. Details inline.
Posted via Macroscope — UI Consistency
There was a problem hiding this comment.
Reviewed the shared PanelTabCloseButton extraction and both call sites. The extraction itself is faithful for RightPanelTabs (row shell, group/tab scope, pending dot placement, and close handler are unchanged), and it resolves the duplication flagged on the previous revision. Two smaller consistency points remain in the terminal sidebar migration.
Posted via Macroscope — UI Consistency
The terminal sidebar did not read like the rest of the panel navigation. Terminal rows used a separate tree treatment, and uppercase
GROUP 1labels did not explain what each section represented.This aligns terminal rows with the right-panel tabs and names each section after its layout:
Single,Side by side, orStacked. Matching layout icons and terminal counts make the structure visible without exposing the internal group name. Both tab strips share the same identity-to-close control, and the 2px gap within each section remains unchanged.Before
After
Verification
pnpm exec vp fmt --check apps/web/src/components/ui/panel-tab-close-button.tsx apps/web/src/components/RightPanelTabs.tsx apps/web/src/components/ThreadTerminalDrawer.tsxpnpm exec vp lint apps/web/src/components/ui/panel-tab-close-button.tsx apps/web/src/components/RightPanelTabs.tsx apps/web/src/components/ThreadTerminalDrawer.tsxpnpm --filter @t3tools/web typecheckpnpm exec vp test run apps/web/src/components/RightPanelTabs.test.tsx apps/web/src/components/ThreadTerminalDrawer.test.tsSingle,Side by side, andStackedstates; pointer cursors; both tab strips' identity-to-close swap; the terminal close tooltip; inactive-row hover background; 24px rows; and no horizontal overflowMade with gpt-5.6-sol in T3 Code through the Codex harness.
Note
Clarify terminal sidebar grouping with shared
PanelTabCloseButtonand group header labelsPanelTabCloseButtoncomponent that shows an identity icon by default and swaps to an X on hover/focus, with optional tooltip supportRightPanelTabswith the shared component, renderingSurfaceIconas tab identityThreadTerminalDrawerto usePanelTabCloseButtonwithTerminalSquareidentity and a close tooltip, removing the prior Popover-based close affordanceSquare,SquareSplitVertical, orSquareSplitHorizontal), a semantic label (Single/Stacked/Side by side), and a terminal count badge instead of a numeric indexMacroscope summarized 269eba5.
Note
Low Risk
UI-only sidebar/tab styling with no auth, data, or terminal session logic changes. Close is still gated by the existing confirm dialog.
Overview
Makes the terminal sidebar read like the rest of the panel tabs: groups are labeled by layout (
Single,Side by side,Stacked) with matching icons and a count, instead of numberedGROUP Nheaders and tree-branch indentation.Extracts the hover/focus identity-to-X close control into
PanelTabCloseButtonand uses it on both right-panel tabs and terminal rows. Terminal close is always available (not only when multiple terminals exist).Reviewed by Cursor Bugbot for commit 269eba5. Bugbot is set up for automated code reviews on this repo. Configure here.